import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.util.*;


public class Ovni extends Actor
{
    /**
     *  clase la cual es la maquina todo el proceso que esta aqui es automatico
     */
    
    protected static final int distancia=4;
    private MiMundo mundo;
    //private Disparo d = new Disparo();
    int mov=1;

    
    /**
     *  aqui se manda llamar el movimiento del ovni el cual siempre se esta realizando en el juego
     */
    public void act() 
    {
        mueveHorizontal();
        if(Greenfoot.getRandomNumber(100)==1) //esta comparacion es para que los vonis disparen aleatoriamente tmb controla la velocidad de los disparos
            creaDisparo();
    } 
    
    
    public void creaDisparo()
    {
        //Disparo d = new Disparo(50,50);
        //d.act();
        getWorld().addObject(new Disparo(),getX(),getY());
    }

    /**
     *  movimiento automatico del ovni en el eje de las x, aplica para todos los ovnis del juego
     */
    public void mueveHorizontal()
    {   
       if(mov==0)
        {
            if(getX()>200)
            {
              setImage("ovni.png");
              setLocation(getX()-distancia, getY());
              if(getX()<=200)
              mov=1;
            }
        }
       else if(mov==1)
        {
            if(getX()<750)
            {
             setImage("ovni.png");
             setLocation(getX()+distancia, getY());
            if(getX()>=750)
            mov=0;
            }
        }
    
    }
    
    /**
     *  agrega al ovni en el escenario
     */
    public void addedToWorld(World world) {
        mundo = (MiMundo) world;        
     }
}
